package OOPS_CONCEPTS.UPCASTING;

public class Game {
	public void Version(){
		System.out.println("Game version - 2.1.0");
	}
}

class Pikachu extends Game{
	public void Version(){
		System.out.println("Pikachu game version - 1.1.0");
	}
	
	public static void main(String[] args) {
		//1. Khai báo và khởi tạo các đối tượng
		Game objGame = new Game();
		Pikachu objPikachu = new Pikachu();
		
		//2. Thực thi nghiệp vụ
		objGame.Version();
		objPikachu.Version();
		
		//3. Thiết lập tham chiếu biến con
		objGame = objPikachu;     //objGame refers to objPikachu object
		objGame.Version();   		  //calls Pikachu of Version method
	}
	
	/* KẾT QUẢ
	 * --> Game version - 2.1.0
	 * --> Pikachu game version - 1.1.0
	 * --> Pikachu game version - 1.1.0
	 * */
}
